home *** CD-ROM | disk | FTP | other *** search
/ Amiga Tools 2 / Amiga Tools 2.iso / tools / vim / src / makefile < prev    next >
Makefile  |  1995-03-09  |  10KB  |  323 lines

  1. #
  2. # Makefile for VIM on the Amiga, using Aztec/Manx C 5.0 or later
  3. #
  4. # Note: not all dependencies are included. This was done to avoid having
  5. #       to compile everything when a global variable or function is added
  6. #    
  7.  
  8. #>>>>> choose options:
  9. ### -DDIGRAPHS        digraph support (at the cost of 1.6 Kbyte code)
  10. ### -DNO_ARP        do not use arp.library, DOS 2.0 required
  11. ### -DCOMPATIBLE    start in vi-compatible mode
  12. ### -DNOBACKUP        default is no backup file
  13. ### -DDEBUG        output a lot of debugging garbage
  14. ### -DTERMCAP        include termcap file support
  15. ### -DNO_BUILTIN_TCAPS    do not include builtin termcap entries
  16. ###                (use only with -DTERMCAP)
  17. ### -DSOME_BUILTIN_TCAPS include most useful builtin termcap entries
  18. ###                (use only without -DNO_BUILTIN_TCAPS)
  19. ### -DALL_BUILTIN_TCAPS    include all builtin termcap entries
  20. ###                (use only without -DNO_BUILTIN_TCAPS)
  21. ### -Dconst        for compilers that don't have type const
  22. ### -DVIMRC_FILE    name of the .vimrc file in current dir
  23. ### -DEXRC_FILE        name of the .exrc file in current dir
  24. ### -DSYSVIMRC_FILE    name of the global .vimrc file
  25. ### -DSYSEXRC_FILE    name of the global .exrc file
  26. ### -DDEFVIMRC_FILE    name of the system-wide .vimrc file
  27. ### -DVIM_HLP        name of the help file
  28. ### -DNOTITLE        'title' option off by default
  29. ### -DWEBB_COMPLETE    include Webb's code for command line completion
  30. ### -DWEBB_KEYWORD_COMPL include Webb's code for keyword completion
  31.  
  32. DEFINES = -DDIGRAPHS -DSOME_BUILTIN_TCAPS -DVIM_ISSPACE \
  33.         -DWEBB_COMPLETE -DWEBB_KEYWORD_COMPL
  34.  
  35. #>>>>> if TERMCAP is defined obj/termlib.o has to be used
  36. #TERMLIB = obj/termlib.o
  37. TERMLIB = 
  38.  
  39. #>>>>> choose between debugging (-bs) or optimizing (-so)
  40. OPTIONS = -so
  41. #OPTIONS = -bs
  42.  
  43. #>>>>> end of choices
  44. ###########################################################################
  45.  
  46. CFLAGS = $(OPTIONS) -wapruq -ps -qf $(DEFINES) -DAMIGA
  47.  
  48. LIBS = -lc16
  49. SYMS = vim.syms
  50.  
  51. OBJ =    obj/alloc.o obj/amiga.o obj/buffer.o obj/charset.o obj/cmdcmds.o obj/cmdline.o \
  52.     obj/csearch.o obj/digraph.o obj/edit.o obj/fileio.o obj/getchar.o obj/help.o \
  53.     obj/linefunc.o obj/main.o obj/mark.o obj/memfile.o obj/memline.o obj/message.o obj/misccmds.o \
  54.     obj/normal.o obj/ops.o obj/param.o obj/quickfix.o obj/regexp.o \
  55.     obj/regsub.o obj/screen.o obj/search.o \
  56.     obj/tag.o obj/term.o obj/undo.o obj/window.o $(TERMLIB)
  57.  
  58. PRO =    proto/alloc.pro proto/buffer.pro proto/charset.pro proto/cmdcmds.pro proto/cmdline.pro \
  59.     proto/csearch.pro proto/digraph.pro proto/edit.pro proto/fileio.pro \
  60.     proto/getchar.pro proto/help.pro proto/linefunc.pro proto/main.pro proto/mark.pro \
  61.     proto/memfile.pro proto/memline.pro proto/message.pro proto/misccmds.pro proto/normal.pro proto/ops.pro \
  62.     proto/param.pro proto/quickfix.pro proto/regexp.pro proto/regsub.pro \
  63.     proto/screen.pro proto/search.pro \
  64.     proto/tag.pro proto/term.pro proto/termlib.pro \
  65.     proto/undo.pro proto/window.pro proto/amiga.pro
  66.  
  67. /Vim: $(OBJ) version.c
  68.     cc $(CFLAGS) version.c -o obj/version.o
  69.     ln +q -m -o /Vim $(OBJ) obj/version.o $(LIBS)
  70.  
  71. debug: $(OBJ) version.c
  72.     cc $(CFLAGS) version.c -o obj/version.o
  73.     ln +q -m -g -o /Vim $(OBJ) obj/version.o $(LIBS)
  74.  
  75. proto: $(SYMS) $(PRO)
  76.  
  77. ctags:
  78.     csh -c ctags *.c *.h
  79.  
  80. # can't use delete here, too many file names
  81. clean:
  82.     csh -c rm -f $(OBJ) obj/version.o obj/mkcmdtab.o obj/termlib.o /Vim $(SYMS) mkcmdtab cmdtab.h
  83.  
  84. $(SYMS)  : vim.h keymap.h macros.h ascii.h term.h structs.h amiga.h
  85.     cc $(CFLAGS) -ho$(SYMS) vim.h
  86.  
  87. ###########################################################################
  88.  
  89. obj/alloc.o:    alloc.c  $(SYMS)
  90.     cc $(CFLAGS) -hi$(SYMS) alloc.c -o obj/alloc.o
  91.  
  92. proto/alloc.pro:    alloc.c $(SYMS)
  93.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) alloc.c
  94.     csh -c mv -f alloc.pro proto
  95.  
  96. obj/amiga.o:    amiga.c  $(SYMS)
  97.     cc $(CFLAGS) -hi$(SYMS) amiga.c -o obj/amiga.o
  98.  
  99. proto/amiga.pro:    amiga.c $(SYMS)
  100.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) amiga.c
  101.     csh -c mv -f amiga.pro proto
  102.  
  103. obj/buffer.o:    buffer.c  $(SYMS)
  104.     cc $(CFLAGS) -hi$(SYMS) buffer.c -o obj/buffer.o
  105.  
  106. proto/buffer.pro:    buffer.c $(SYMS)
  107.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) buffer.c
  108.     csh -c mv -f buffer.pro proto
  109.  
  110. obj/charset.o:    charset.c  $(SYMS)
  111.     cc $(CFLAGS) -hi$(SYMS) charset.c -o obj/charset.o
  112.  
  113. proto/charset.pro:    charset.c $(SYMS)
  114.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) charset.c
  115.     csh -c mv -f charset.pro proto
  116.  
  117. obj/cmdcmds.o:    cmdcmds.c  $(SYMS)
  118.     cc $(CFLAGS) -hi$(SYMS) cmdcmds.c -o obj/cmdcmds.o
  119.  
  120. proto/cmdcmds.pro:    cmdcmds.c $(SYMS)
  121.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) cmdcmds.c
  122.     csh -c mv -f cmdcmds.pro proto
  123.  
  124. obj/cmdline.o:    cmdline.c  $(SYMS) cmdtab.h
  125.     cc $(CFLAGS) -hi$(SYMS) cmdline.c -o obj/cmdline.o
  126.  
  127. proto/cmdline.pro:    cmdline.c $(SYMS) cmdtab.h
  128.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) cmdline.c
  129.     csh -c mv -f cmdline.pro proto
  130.  
  131. obj/csearch.o:    csearch.c  $(SYMS)
  132.     cc $(CFLAGS) -hi$(SYMS) csearch.c -o obj/csearch.o
  133.  
  134. proto/csearch.pro:    csearch.c $(SYMS)
  135.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) csearch.c
  136.     csh -c mv -f csearch.pro proto
  137.  
  138. obj/digraph.o:    digraph.c  $(SYMS)
  139.     cc $(CFLAGS) -hi$(SYMS) digraph.c -o obj/digraph.o
  140.  
  141. proto/digraph.pro:    digraph.c $(SYMS)
  142.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) digraph.c
  143.     csh -c mv -f digraph.pro proto
  144.  
  145. obj/edit.o:    edit.c  $(SYMS)
  146.     cc $(CFLAGS) -hi$(SYMS) edit.c -o obj/edit.o
  147.  
  148. proto/edit.pro:    edit.c $(SYMS)
  149.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) edit.c
  150.     csh -c mv -f edit.pro proto
  151.  
  152. obj/fileio.o:    fileio.c  $(SYMS)
  153.     cc $(CFLAGS) -hi$(SYMS) fileio.c -o obj/fileio.o
  154.  
  155. proto/fileio.pro:    fileio.c $(SYMS)
  156.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) fileio.c
  157.     csh -c mv -f fileio.pro proto
  158.  
  159. obj/getchar.o:    getchar.c  $(SYMS)
  160.     cc $(CFLAGS) -hi$(SYMS) getchar.c -o obj/getchar.o
  161.  
  162. proto/getchar.pro:    getchar.c $(SYMS)
  163.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) getchar.c
  164.     csh -c mv -f getchar.pro proto
  165.  
  166. obj/help.o:    help.c  $(SYMS)
  167.     cc $(CFLAGS) -hi$(SYMS) help.c -o obj/help.o
  168.  
  169. proto/help.pro:    help.c $(SYMS)
  170.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) help.c
  171.     csh -c mv -f help.pro proto
  172.  
  173. obj/linefunc.o:    linefunc.c  $(SYMS)
  174.     cc $(CFLAGS) -hi$(SYMS) linefunc.c -o obj/linefunc.o
  175.  
  176. proto/linefunc.pro:    linefunc.c $(SYMS)
  177.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) linefunc.c
  178.     csh -c mv -f linefunc.pro proto
  179.  
  180. obj/main.o:    main.c $(SYMS) param.h globals.h
  181.     cc $(CFLAGS) -hi$(SYMS) main.c -o obj/main.o
  182.  
  183. proto/main.pro:    main.c $(SYMS)
  184.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) main.c
  185.     csh -c mv -f main.pro proto
  186.  
  187. obj/mark.o:    mark.c  $(SYMS)
  188.     cc $(CFLAGS) -hi$(SYMS) mark.c -o obj/mark.o
  189.  
  190. proto/mark.pro:    mark.c $(SYMS)
  191.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) mark.c
  192.     csh -c mv -f mark.pro proto
  193.  
  194. obj/memfile.o:    memfile.c  $(SYMS)
  195.     cc $(CFLAGS) -hi$(SYMS) memfile.c -o obj/memfile.o
  196.  
  197. proto/memfile.pro:    memfile.c $(SYMS)
  198.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) memfile.c
  199.     csh -c mv -f memfile.pro proto
  200.  
  201. obj/memline.o:    memline.c  $(SYMS)
  202.     cc $(CFLAGS) -hi$(SYMS) memline.c -o obj/memline.o
  203.  
  204. proto/memline.pro:    memline.c $(SYMS)
  205.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) memline.c
  206.     csh -c mv -f memline.pro proto
  207.  
  208. obj/message.o:    message.c  $(SYMS)
  209.     cc $(CFLAGS) -hi$(SYMS) message.c -o obj/message.o
  210.  
  211. proto/message.pro:    message.c $(SYMS)
  212.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) message.c
  213.     csh -c mv -f message.pro proto
  214.  
  215. obj/misccmds.o:    misccmds.c  $(SYMS)
  216.     cc $(CFLAGS) -hi$(SYMS) misccmds.c -o obj/misccmds.o
  217.  
  218. proto/misccmds.pro:    misccmds.c $(SYMS)
  219.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) misccmds.c
  220.     csh -c mv -f misccmds.pro proto
  221.  
  222. obj/normal.o:    normal.c  $(SYMS) ops.h
  223.     cc $(CFLAGS) -hi$(SYMS) normal.c -o obj/normal.o
  224.  
  225. proto/normal.pro:    normal.c $(SYMS)
  226.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) normal.c
  227.     csh -c mv -f normal.pro proto
  228.  
  229. obj/ops.o:    ops.c  $(SYMS) ops.h
  230.     cc $(CFLAGS) -hi$(SYMS) ops.c -o obj/ops.o
  231.  
  232. proto/ops.pro:    ops.c $(SYMS)
  233.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) ops.c
  234.     csh -c mv -f ops.pro proto
  235.  
  236. obj/param.o:    param.c  $(SYMS)
  237.     cc $(CFLAGS) -hi$(SYMS) param.c -o obj/param.o
  238.  
  239. proto/param.pro:    param.c $(SYMS)
  240.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) param.c
  241.     csh -c mv -f param.pro proto
  242.  
  243. obj/quickfix.o:    quickfix.c  $(SYMS)
  244.     cc $(CFLAGS) -hi$(SYMS) quickfix.c -o obj/quickfix.o
  245.  
  246. proto/quickfix.pro:    quickfix.c $(SYMS)
  247.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) quickfix.c
  248.     csh -c mv -f quickfix.pro proto
  249.  
  250. obj/regexp.o:    regexp.c  $(SYMS)
  251.     cc $(CFLAGS) -hi$(SYMS) regexp.c -o obj/regexp.o
  252.  
  253. proto/regexp.pro:    regexp.c $(SYMS)
  254.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) regexp.c
  255.     csh -c mv -f regexp.pro proto
  256.  
  257. obj/regsub.o:    regsub.c  $(SYMS)
  258.     cc $(CFLAGS) -hi$(SYMS) regsub.c -o obj/regsub.o
  259.  
  260. proto/regsub.pro:    regsub.c $(SYMS)
  261.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) regsub.c
  262.     csh -c mv -f regsub.pro proto
  263.  
  264. obj/screen.o:    screen.c  $(SYMS)
  265.     cc $(CFLAGS) -hi$(SYMS) screen.c -o obj/screen.o
  266.  
  267. proto/screen.pro:    screen.c $(SYMS)
  268.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) screen.c
  269.     csh -c mv -f screen.pro proto
  270.  
  271. obj/search.o:    search.c  $(SYMS)
  272.     cc $(CFLAGS) -hi$(SYMS) search.c -o obj/search.o
  273.  
  274. proto/search.pro:    search.c $(SYMS)
  275.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) search.c
  276.     csh -c mv -f search.pro proto
  277.  
  278. obj/tag.o:    tag.c  $(SYMS)
  279.     cc $(CFLAGS) -hi$(SYMS) tag.c -o obj/tag.o
  280.  
  281. proto/tag.pro:    tag.c $(SYMS)
  282.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) tag.c
  283.     csh -c mv -f tag.pro proto
  284.  
  285. obj/term.o:    term.c  $(SYMS) term.h
  286.     cc $(CFLAGS) -hi$(SYMS) term.c -o obj/term.o
  287.  
  288. proto/term.pro:    term.c $(SYMS)
  289.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) term.c
  290.     csh -c mv -f term.pro proto
  291.  
  292. obj/termlib.o:    termlib.c  $(SYMS)
  293.     cc $(CFLAGS) termlib.c -o obj/termlib.o
  294.  
  295. proto/termlib.pro:    termlib.c $(SYMS)
  296.     cc -qa -qp $(CFLAGS) -DPROTO termlib.c
  297. #the manx compiler generates a wrong prototype for tputs
  298.     vim -s termlib.fix termlib.pro
  299.     csh -c mv -f termlib.pro proto
  300.  
  301. obj/undo.o:    undo.c  $(SYMS)
  302.     cc $(CFLAGS) -hi$(SYMS) undo.c -o obj/undo.o
  303.  
  304. proto/undo.pro:    undo.c $(SYMS)
  305.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) undo.c
  306.     csh -c mv -f undo.pro proto
  307.  
  308. obj/window.o:    window.c  $(SYMS)
  309.     cc $(CFLAGS) -hi$(SYMS) window.c -o obj/window.o
  310.  
  311. proto/window.pro:    window.c $(SYMS)
  312.     cc -qa -qp $(CFLAGS) -DPROTO -hi$(SYMS) window.c
  313.     csh -c mv -f window.pro proto
  314.  
  315. cmdtab.h: cmdtab.tab mkcmdtab
  316.     mkcmdtab cmdtab.tab cmdtab.h
  317.  
  318. mkcmdtab: obj/mkcmdtab.o
  319.     ln +q -o mkcmdtab obj/mkcmdtab.o -lc16
  320.  
  321. obj/mkcmdtab.o: mkcmdtab.c
  322.     cc $(CFLAGS) mkcmdtab.c -o obj/mkcmdtab.o
  323.